/*
 * @Author: LGX
 * @Date: 2022-5-01
 * @Description:
 * 2.1 STRING() - 变长字符串
2.2 CHAR() - 定长字符串
2.3 TEXT() - 指定为文本列
2.4 INTEGER() - 整型
2.5 BIGINT() - 长整型
2.6 FLOAT() - 浮点数
2.7 REAL() - 浮点数
2.8 DOUBLE() - 双精度浮点数
2.9 DECIMAL() - 小数
2.10 BOOLEAN() - 布尔
2.11 TIME() - 时间类型
2.12 DATE() - 日期时间类型
2.13 DATEONLY() - 日期类型
2.14 HSTORE() - 键/值类型
2.15 JSON() - JSON字符串类型
2.16 JSONB() - JSONB类型
2.17 NOW() - 时间默认值
2.18 BLOB() - 二进制类型
2.19 RANGE() - Range类型
2.20 UUID() - UUID类型
2.21 UUIDV1() - UUID v1 默认值
2.22 UUIDV4() - UUID v4 默认值
2.23 VIRTUAL() - 虚拟值
2.24 ENUM() - 枚举
2.25 ARRAY() - 数组
2.26 GEOMETRY() - 几何类型
2.27 GEOGRAPHY() - 地理类型
 */
export default app => {
  const { STRING, INTEGER, DATEONLY } = app.Sequelize;

  const diaryList = app.model.define('diaryList', {
    id: {
      primaryKey: true,
      type: INTEGER,
      autoIncrement: true,
      comment: '日记id',
    },
    title: {
      type: STRING,
      comment: '标题',
    },
    context: {
      type: STRING,
      comment: '内容',
    },
    startime: {
      type: DATEONLY,
      comment: '发布时间',
    },
  });
  diaryList.associate = () => {
    // app.model.User.hasMany(app.model.Article, { foreignKey: 'uid' });
    // app.model.User.hasMany(app.model.Comment);
  };
  return diaryList;
};
